package com.UnionPayCenter.account.service;

import com.UnionPayCenter.account.entity.FundsBill;
import com.UnionPayCenter.account.entity.dto.FundsBillDTO;
import com.github.pagehelper.Page;

/**
 * 资金流水
 * 包含支付流水和充值流水
 */
public interface FundsBillService {

    /**
     * 保存资金流水记录
     *
     * @param fundsBill 资金流水记录
     */
    void saveFundsBill(FundsBill fundsBill);

    /**
     * 更新资金流水
     *
     * @param fundsBill 资金流水记录
     */
    void updateFundsBill(FundsBill fundsBill);

    /**
     * 根据条件分页查询资金流水记录
     * 成功的支付记录和充值记录
     *
     * @param fundsBillDTO 查询条件
     * @param page         第几页
     * @param pageSize     每页数据量
     * @return 资金流水记录
     */
    Page<FundsBill> getFundsBillByCondition(FundsBillDTO fundsBillDTO, Integer page, Integer pageSize);

    Page<FundsBill> getMpFundsBillByCondition(FundsBillDTO fundsBillDTO, Integer page, Integer pageSize);
}
